Computing is usually defined as the activity of using and improving computer hardware and software. It is the computer-specific part of information technology. Computer science (or computing science) is the study and the science of the theoretical foundations of information and computation and their implementation and application in computer systems.
Computing Curricula 2005[1] defined "computing" as:
"In a general way, we can define computing to mean any goal-oriented activity requiring, benefiting from, or creating computers. Thus, computing includes designing and building hardware and software systems for a wide range of purposes; processing, structuring, and managing various kinds of information; doing scientific studies using computers; making computer systems behave intelligently; creating and using communications and entertainment media; finding and gathering information relevant to any particular purpose, and so on. The list is virtually endless, and the possibilities are vast."
A computer is a machine that manipulates data according to a set of instructions called a computer program. The program has an executable form that the computer can use directly to execute the instructions. The same program in its human-readable source code form, enables a programmer to study and develop the algorithm. Because the instructions can be carried out in different types of computers, a single set of source instructions converts to machine instructions according to the central processing unit type.
The execution process carries out the instructions in a computer program. Instructions express the computations performed by the computer. They trigger sequences of simple actions on the executing machine. Those actions produce effects according to the semantics of the instructions.
Computer programming in general is the process of writing, testing, debugging, and maintaining the source code and documentation of computer programs. This source code is written in a programming language, which is an artificial language often more restrictive or demanding than natural languages, but easily translated by the computer. The purpose of programming is to invoke the desired behaviour (customization) from the machine. The process of writing high quality source code requires knowledge of both the application's domain and the computer science domain. The highest-quality software is thus developed by a team of various domain experts, each person a specialist in some area of development. But the term programmer may apply to a range of program quality, from hacker to open source contributor to professional. And a single programmer could do most or all of the computer programming needed to generate the proof of concept to launch a new "killer" application.
Contents |
The term "computing" has sometimes been narrowly defined, as in a 1989 ACM report on Computing as a Discipline[2]:
The discipline of computing is the systematic study of algorithmic processes that describe and transform information: their theory, analysis, design, efficiency, implementation, and application. The fundamental question underlying all computing is "What can be (efficiently) automated?"
Computing Curricula 2005[1] also recognizes that the meaning of "computing" depends on the context:
Computing also has other meanings that are more specific, based on the context in which the term is used. For example, an information systems specialist will view computing somewhat differently from a software engineer. Regardless of the context, doing computing well can be complicated and difficult. Because society needs people to do computing well, we must think of computing not only as a profession but also as a discipline.
The term "computing" is also synonymous with counting and calculating. In earlier times, it was used in reference to mechanical computing machines.
A computer is a machine that reads, stores, manipulates and displays data. The most common example are the various personal computers. Other common examples include: mobile phones, mp3 players, or video game consoles.
The Digital Bibliography & Library Project, as of July 2007, lists over 910,000 bibliographic entries on computer science and several thousand links to the home pages of computer scientists. Common topics include:
|
See information processor for a high-level block diagram.
After the commoditization of memory, attention turned to optimizing CPU performance at the instruction level. Various methods of speeding up the fetch-execute cycle include:
The main goal of CbWN is to optimize the system performance of the flexible wireless network.
There are several terms which describe classes, or categories, of computers:
See also: Standardization and Standards organization
See also Open standard
http://foldoc.org/contents.html Free on-line dictionary of computing
http://pubs.doc.ic.ac.uk/ open-access repository of publications - Department of Computing - Imperial College London
|